package com.dwy2002.pojo.dto.courses;

import com.dwy2002.pojo.dto.BasePage;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 课程类的分页数据类
 *
 * @author 杜伟毅
 * @version 1.0
 * @since 2025/01/21
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class CoursesPageDTO extends BasePage {
    //搜索数据------------------------------------------------------------

    /**
     * 要搜索的标题
     */
    private String title;

    //排序数据------------------------------------------------------------

    /**
     * 代表课程开始时间按升序还是降序排序，true为升序，false为降序，默认false
     */
    private Boolean startTimeIsAsc = false;
    /**
     * 代表是否启用包间创建时间来排序，默认false
     */
    private Boolean startTimeEnabled = false;
    /**
     * 根据课程费用来进行升序还是降序排序
     */
    private Boolean feeIsAsc = false;
    /**
     * 代表是否启用包间创建时间来排序，默认false
     */
    private Boolean feeEnabled = false;

    //分组数据------------------------------------------------------------

    /**
     * 根据课程状态进行分类，0=未开始, 1=已开始, 2=已结束, 3=已取消，
     */
    private Byte status;
    /**
     * 用于控制课程状态分类的开关，true 表示开启，false 表示关闭,默认false。
     */
    private Boolean statusFilterEnabled = false;
}
